The invention pertains to the field of backup systems in high transaction performance, high data availability networks such as Fibre Channel local area networks in large data storage and processing facilities such as credit card transaction processing centers etc.
In typical high transaction performance, high data availability networks comprising one or more Transaction Servers coupled by a Fibre Channel Arbitrated Loop (hereafter FC-AL or the main loop) to huge banks of on-line storage disk drives called JBODs. Transactions are processed and data is written to the disk drives and read from the disk drives. Typically such read and write transactions keep the main loop busy all the time. However, because of the frequency of failures of disk drives and the uneven frequency of need for read transactions on some data as compared to other data, there is a need in such systems for hierarchical storage management functions such as data aging storage and automatic, nonintrusive backup.
One mirrored system of which the applicants are aware is a mirrored storage system marketed by Vinca. In this system, one Transaction Server is coupled by a SCSI bus to a JBOD, RAID or other hard disk arrangement. A JBOD, like a RAID is a disk drive arrangement with multiple disk drives all coupled to the same bus. A JBOD stands for "just a bunch of disks" believe it or not. A JBOD is an enclosure containing a bunch of electromechanical disk drives, power supplies, a backplane which a 4-wire Fibre Channel extension with one differential pair for transmit and one differential pair for receive in the case of a JBOD FCAL node. The primary difference between a JBOD and a RAID is that a RAID has a disk controller sitting between the FCAL and the drives whereas a JBOD does not. RAID stands for Redundant Array of Inexpensive Disks and is also known as a "disk array". RAIDs provide fault tolerance over conventions JBODs and give greater performance in some application by accessing multiple disk drives in parallel. RAIDs provide fault tolerance by adding parity in the sense that data is "striped" across the first N drives and the N+1st drive contains the parity. If any one drive fails, knowing the parity scheme allows the data to be recreated by using the parity drive. A controller sits on a RAID between the drives and a bus so RAIDs are hot-pluggable so that any one drive can be removed and the controller can recreate its data on the fly. FCALs make JBODs more hot pluggable than SCSI bus connections to JBODs since FCAL was designed to be a network. A SCSI bus is a bus with a particular bus protocol referred to as the SCSI protocol. This server is connected by a proprietary high speed link to another server. The second server is connected by another SCSI bus to a mirrored JBOD, RAID or other hard disk arrangement. In this arrangement, each time the Transaction Server writes data to its hard drive array, the same data needs to be converted from SCSI format, packetized for transmission over the proprietary high speed link and transmitted to the second server using whatever protocol is in use on the proprietary high speed link. When the second server receives the packets, it must depacketize them and convert the payload data to SCSI format data and then initiate a SCSI write transaction to write the data to the hard disk array coupled to the second server. Thus, the overhead of two SCSI write transactions, packetizing and depacketizing to from the packet format on the proprietary high speed link and a transmission over the proprietary high speed link must be made to get the data mirrored. The increased overhead increases the server processing loads and thereby increases the cost in CPU time of each transaction. The protocol conversion between SCSI and the protocol on the proprietary high speed link between the servers forces the servers to double as pseudorouters.
Other backup products that are commercially available are software products like the Replica backup software from Stac Electronics in Carlsbad, Calif. This product can do nothing to solve the problem solved by the invention in speeding up read transactions on a FC-AL since it cannot isolate backup devices from fast main loop devices and there is no mirrored storage. This means that transactions to the main storage devices cannot be started until the backup transaction from the main storage devices to the backup storage devices are completed.
The requirement for hierarchical storage management creates a conflict in system performance and cost considerations. Hierarchical storage management functions are typically implemented with low performance, low cost devices whereas online transaction processing systems are implemented with high performance, high cost devices. The mixing of hierarchical storage management devices on the same FC-AL with high speed, high performance on-line transaction processing devices results in a significant reduction in overall on-line transaction processing performance. This is because the high performance devices must wait for the low performance hierarchical storage management devices to complete their tasks before the high speed transaction processing devices can continue their work. This is because only one pair of devices can have control of the Fibre Channel Arbitrated Loop at any particular time, so when a hierarchical storage management server has control of the FC-AL to carry out a write transaction to a backup disk drive, no high speed transaction processor can simultaneously be using the FC-AL to do either read or write transactions to the JBOD drives. This becomes an intractable problem as on-line transaction processing systems expand over terabytes of storage and will be becoming worse over time as huge data structures like image, voice and video files are added to these already large data structures.
Therefore, a need has arisen for a way to implement hierarchical storage management functions in such high performance, online transaction processing systems without severely negatively impacting the performance of such systems.